///////////////////////////////////////////////////////////////////////////
//
// Spring Engine Source File.
// Copyright (C), Dengtao 2011-2021
// ----------------------------------------------------------------------
// File name:   SfMessageHandler.h
// Version:     v1.0.0
// Created:     2013/06/16 18:33 by dengtao
// Compilers:   Visual Studio 2008
// Description: 
// ----------------------------------------------------------------------
// History:
//
///////////////////////////////////////////////////////////////////////////

#ifndef _SfMessageHandler_H_
#define _SfMessageHandler_H_

#include "SfBaseDefines.h"
#include "SfMessage.h"

namespace Sunflower
{

//////////////////////////////////////////////////////////////////////////
//Summary:
//	Message handle result
//////////////////////////////////////////////////////////////////////////
enum MessageHandleResult
{
	//
	//done
	MessageHandleResultDone,
	//
	//pass
	//pass to next IMessageReciever.
	MessageHandleResultPass,
};

//////////////////////////////////////////////////////////////////////////
//Summary:
//	Message reciever.
//////////////////////////////////////////////////////////////////////////
class IMessageHandler
{
public:
	virtual MessageHandleResult OnMessage(const Message& msg) = 0;
};

}

#endif



